package com.monitor.service;

import com.monitor.common.page.PageBean;
import com.monitor.common.response.Result;
import com.monitor.pojo.MonitorBakInfo;
import com.monitor.pojo.MonitorInfo;
import com.monitor.vo.MonitorEditReq;
import com.monitor.vo.MonitorReqVo;
import com.monitor.vo.MonitorRetVo;
import com.monitor.vo.MonitorVo;

import java.util.List;

/**
 * @ClassName MonitorService
 * @Package com.monitor.service
 * @Description 监控报警业务处理
 * @Author zhixingbai
 * @Create 2018/10/1114:01
 */
public interface MonitorService {

      /**
       * 请求监控
       * @param reqVo
       * @return
       */
      Result reqMonitor(MonitorReqVo[] reqVo);

      /**
       * 返回监控
       * @param retVo
       * @return
       */
      Result retMonitor(MonitorRetVo retVo);

      /**
       * 查询列表
       * @return
       */
      PageBean<MonitorInfo> selectMonitorList(MonitorVo reqVo);

      /**
       * 查询所有列表
       */
      List<MonitorInfo>  selectMonitors(String ids);

      /**
       * 查询备份列表
       * @return
       */
      PageBean<MonitorBakInfo> selectBakList(MonitorVo reqVo);

      /**
       * 删除备份数据
       * @param delDate
       * @return
       */
      Result delBak(Integer delDate);

      /**
       * 修改報警間隔時間
       * @param editReq
       * @return
       */
      Result setCostTime(MonitorEditReq editReq);

      /**
       * 修改类型報警間隔時間
       * @param editReq
       * @return
       */
      Result setTypeTime(MonitorEditReq editReq);

      /**
       * 删除报警账号
       * @param id
       * @return
       */
      Result delMonitor(Integer id);

      /**
       * 更新账号为是否报警
       * @param id
       * @param isWarning
       * @return
       */
      Result editWarning(Integer id,String isWarning);

}
